package com.jinmdz.fmis.api.admin.model.servicedictionary;

import com.jinmdz.fmis.common.annotation.AnValidate;
import com.jinmdz.fmis.common.constant.EValidateCode;
import com.jinmdz.fmis.dao.base.BaseItem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 字典费用用途关联保存数据
 *
 * @author GuanKui
 * @date 2020/3/10 9:28
 */
@ApiModel(value = "字典费用用途关联保存数据", description = "字典费用用途关联保存数据")
public class ServiceDictionaryDataSaveData extends BaseItem {

    /**
     * 【data_dictionary】表中【id】字段值
     */
    @AnValidate(name = "字典表主键", required = true, code = EValidateCode.GREATER_ZERO)
    @ApiModelProperty(value = "字典表主键", name = "dataDictionaryId", position = 1)
    private Integer dataDictionaryId;

    /**
     * 【service_dictionary_item】表中费用外键，外连接关联表【service_item】中【id】字段
     */
    @AnValidate(name = "费用外键", required = true, code = EValidateCode.GREATER_ZERO)
    @ApiModelProperty(value = "费用外键", name = "serviceItemId", position = 2)
    private Integer serviceItemId;

    /**
     * 用途，【service_dictionary_item】表中用途
     */
    @AnValidate(name = "用途", required = true)
    @ApiModelProperty(value = "用途", name = "purpose", position = 3)
    private String purpose;

    /**
     * 规则编码，【service_dictionary_item】表中规则编码
     */
    @AnValidate(name = "规则编码", required = true)
    @ApiModelProperty(value = "规则编码", name = "ruleCode", position = 4)
    private String ruleCode;

    /**
     * 规则类型，【service_dictionary_item】表中规则类型
     */
    @AnValidate(name = "规则类型", required = true)
    @ApiModelProperty(value = "规则类型", name = "ruleType", position = 5)
    private String ruleType;

    /**
     * 规则参数，json字符串，无参数时，值为空对象{}
     */
    @AnValidate(name = "")
    @ApiModelProperty(value = "规则参数", name = "ruleParams", position = 6)
    private String ruleParams;

    /**
     * 规则描述，【service_dictionary_item】表中规则描述
     */
    @AnValidate(name = "")
    @ApiModelProperty(value = "规则描述", name = "ruleDescribe", position = 7)
    private String ruleDescribe;

    public Integer getDataDictionaryId() {
        return dataDictionaryId;
    }

    public ServiceDictionaryDataSaveData setDataDictionaryId(Integer dataDictionaryId) {
        this.dataDictionaryId = dataDictionaryId;
        return this;
    }

    public Integer getServiceItemId() {
        return serviceItemId;
    }

    public ServiceDictionaryDataSaveData setServiceItemId(Integer serviceItemId) {
        this.serviceItemId = serviceItemId;
        return this;
    }

    public String getPurpose() {
        return purpose;
    }

    public ServiceDictionaryDataSaveData setPurpose(String purpose) {
        this.purpose = purpose;
        return this;
    }

    public String getRuleCode() {
        return ruleCode;
    }

    public ServiceDictionaryDataSaveData setRuleCode(String ruleCode) {
        this.ruleCode = ruleCode;
        return this;
    }

    public String getRuleType() {
        return ruleType;
    }

    public ServiceDictionaryDataSaveData setRuleType(String ruleType) {
        this.ruleType = ruleType;
        return this;
    }

    public String getRuleParams() {
        return ruleParams;
    }

    public ServiceDictionaryDataSaveData setRuleParams(String ruleParams) {
        this.ruleParams = ruleParams;
        return this;
    }

    public String getRuleDescribe() {
        return ruleDescribe;
    }

    public ServiceDictionaryDataSaveData setRuleDescribe(String ruleDescribe) {
        this.ruleDescribe = ruleDescribe;
        return this;
    }
}
